import { ls } from '@/utils';
import { getInfo, getRecruitResumeCount } from '@/api/service/user';
import { Gender } from '@/types/enum';

export const serviceInfo = {
	id: 0,
	// 姓名
	name:	'',
	// 身份证号码
	idCard:	'',
	// 性别
	sex: Gender.Other,
	// 名族
	nation:	'',
	// 生日
	birthday:	'',
	// 身份证有效期-开始时间
	effectiveStartTime:	'',
	// 身份证有效期-结束时间
	effectiveEndTime:	'',
	// 身份证有效期是否长期 0 非长期 1 长期
	longTerm: 0,
	// 身份证正面
	frontPicIdcard:	'',
	// 身份证反面
	backPicIdcard:	'',
	// 身份认证状态  身份证认证 0>未通过 1->通过
	identityStatus: 0,
	
	// 期望工作
	workIntention: '',
	// 期望工作城市
	workLocation: '',
	// 期望最低薪资
	minSalary: 0,
	// 期望最高薪资
	maxSalary: 0,
	
	// 头像
	avatar: '',
	// 婚姻状态
	maritalStatus: 0,
	// 生育情况
	birthStatus: 0,
	// 学历
	education: 0,
	// 身高
	height: 0,
	// 体重
	weight: 0,
	// 工作年限
	serviceYears: 0,
	// 省份
	province: '',
	// 省份编码
	provinceCode: 0,
	// 地市
	city: '',
	// 地市编码
	cityCode: 0,
	// 区县
	area: '',
	// 区县编码
	areaCode: 0,
	// 街道
	street: '',
	// 街道编码
	streetCode: 0,
	// 详细地址
	address: '',
	// 服务语言
	serviceLanguage: '',
	// 服务年龄段
	serviceAgeGroup: '',
	// 是否接受外派 0->不接受 1->接受
	expatriate: 0,
	// 擅长菜系
	greatCuisine: '',
	// 自我介绍
	selfIntroduction: '',
	// 紧急联系人身份 0->配偶,1->子女,2->父母,3->朋友， 4亲戚 5 其他
	urgentIdentity: 0,
	// 紧急联系人姓名
	urgentName: '',
	// 紧急联系人手机
	urgentPhone: '',
	// 解绑状态 0 未发起 1 发起解绑
	unbindStatus: 0,
	// 解绑剩余次数
	unbindcount: 0,
	// 工作经历列表
	workHistory: [],
	// 证件列表
	porkPhoto: [],
};

const service = {
	state: () => ({
		// 家政工基础信息
		serviceInfo: ls.get('serviceInfo') || serviceInfo,
		// 简历投递数量
		resumeDeliverCount: 0,
	}),
	mutations: {
		// 设置家政工信息
		SET_SERVICE_INFO(state, serviceInfo) {
			state.serviceInfo = serviceInfo;
			ls.set('serviceInfo', serviceInfo);
		},
		// 设置简历投递数量
		SET_RESUME_DELIVER_COUNT(state, count: number) {
			state.resumeDeliverCount = count;
			ls.set('resumeDeliverCount', count);
		}
	},
	actions: {
		// 设置家政工信息
		SET_SERVICE_INFO(context) {
			getInfo().then(res => {
				if (res.code === 200 && res.data) {
					context.commit('SET_SERVICE_INFO', res.data);
				}
			})
		},
		// 设置简历投递数量
		SET_RESUME_DELIVER_COUNT(context) {
			getRecruitResumeCount().then(res => {
				if (res.code === 200) {
					context.commit('SET_RESUME_DELIVER_COUNT', res.data);
				}
			});
		},
	},
}

export default service;